#include<bits/stdc++.h>
#define lowbit(x) (x&(-x))
#define rep(i,l,r) for(int i=(l);i<=(r);++i)
#define IN(x) freopen(#x".in","r",stdin)
#define OUT(x) freopen(#x".out","w",stdout)
template<class T=int>
inline T read(){
    T x=0; char c=0; bool sgn=0;
    for(;!isdigit(c);c=getchar())sgn|=(c=='-');
    for(;isdigit(c);c=getchar())x=(x<<3)+(x<<1)+(c^48);
    return sgn?-x:x;
}
template<class T>
inline void write(T x){
    static char c[45]; unsigned p=0;
    if(x<0)putchar('-'),x=-x;
    do c[++p]=(x%10)^48,x/=10; while(x);
    while(p)putchar(c[p--]);
}
inline void write(char c){putchar(c);}
template<class T,class ...U>
inline void write(T x,U ...t){
    write(x),write(t...);
}
using namespace std;
const int N=1e5+10;
int n,a[N],mx,b[N],ans;
signed main(){
    IN(duel);
    OUT(duel);
    scanf("%d",&n);
    rep(i,1,n)scanf("%d",&a[i]),++b[a[i]],ans=max(ans,b[a[i]]);
    printf("%d\n",ans);
    return 0;
}
